<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>location</title>
		<script type="text/javascript">
			//var   /vɑr/
			//alert   /əˈlɜːrt/
			//location   /ləʊˈkeɪʃn/
			// protocol /ˈproʊtəkɑːl/
			// hostname  /ˈhəʊstˌneɪm/ 
			// port  /pɔːt/
			// pathname  /'pæθ,nem/
			// search    /sɜːtʃ/
			// hash /hæʃ/
			
			// url：统一资源定位符
			// url的格式   协议://IP(域名):端口号/路径/?查询字符串#锚点
			// 英文版      protocol://hostname:port/pathname/?search#hash
			
			/* 
			location是Bom对象之一，它提供了与当前窗口中加载的文档有关的信息，
			还提供了一些导航功能。事实上，location对象是window对象的属性，也
			是document对象的属性，所以 window.location 和 documen.location 等效
			*/
			
			// protocol /ˈproʊtəkɑːl/
			// location.protocol  获取url的协议类型
			// 				   file : 本地磁盘文件访问
			// 				   http ：未经认证的网站(如我们用自己电脑建立服务器)
			// 				   https：有证书认证协议(例如百度的网站)
			
			// alert(location.protocol);   //file:
			
			
			
			
			
			// hostname  /ˈhəʊstˌneɪm/ 
			// location.hostname   获取主机名   IP(在全球范围内找到你当前网络的地址)
			// 								域名  就是  IP的别称
			// 举个例子，我们用黑匣子输入 ping www.baidu.com 便可知道百度的IP为 14.215.177.39
			// 而 www.baidu.com 则是百度这个网站的域名
			
			// alert(location.hostname);  //如果访问的是本地磁盘则为空
			
			
			
			
			
			
			// port  /pɔːt/
			// location.port     端口号(默认是隐藏的)
			// 【注】当前电脑使用网络的软件，都会随机给他分配一个编号   0~65535
			
			// 通过hostname:port  可以直接定位到当前使用网络的程序
			// 一个小细节 ：浏览器默认估计端口是8080
			// 			http   80
			// 			https  443
			// alert(location.port);   //如果访问的是本地磁盘则为空
			
			
			
			
			
			// pathname  /'pæθ,nem/
			// location.pathname   路径
			// alert(location.pathname);   ///C:/Users/Administrator/Desktop/JavaScript/Bom/location.html
			
			
			
			
			
			
			// search    /sɜːtʃ/
			// location.search    查询字符串(前后端交互)
			// 格式例子  ?name=value&name2=value2
			
			//我们试着在我们网页网址后面加上?name1=location
			// alert(location.search);    //?name1=location
			
			
			
			
			// hash /hæʃ/
			// location.hash    锚点
			// 格式例子   #锚点
			
			//我们试着在我们网页网址后面加上#10
			// alert(location.hash);     //#10
			
			
			
			
			
			// assign  /əˈsaɪn/
			// replace  /rɪˈpleɪs/
			// reload  /ˌriːˈloʊd/
			
			// location.assign(url) 在当前窗口跳转到指定的url。【注意】这种跳转会产生历史记录
			// location.replace(url)在当前窗口替换成新的url。【注意】这种替换不会产生离职记录
			// location.reload()  刷新当前窗口，有可能通过缓存加载
			// location.reload(true)  不经过浏览器缓存强制从服务器重载
			
			// alert(document.location == window.location);  //true
			
		</script>
	</head>
	<body>
		<button onclick="location.assign('https://www.baidu.com')">assign</button>
		<button onclick="location.replace('https://www.baidu.com')">replace</button>
		<button onclick="location.reload()">reload()</button>
		<button onclick="location.reload(true)">reload(true)</button>
	</body>
</html>
